

layout(location = 0) in vec3 vertex;
layout(location = 1) in vec3 normal;
layout(location = 2) in vec2 uv;

layout(std140) uniform cameraData {
  mat4 viewMatrix;
  mat4 projMatrix;
  vec3 viewPos;
};

uniform mat4 modelMatrix;

out vec2 fragUv;

void main() {
  gl_Position = projMatrix * viewMatrix * modelMatrix * vec4(vertex, 1.0f);
  fragUv = uv;
}